package cn.itsource.work_queue;

import cn.itsource.ConnectionUtil;
import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;

//发送者
public class Send {
    //队列的名字
    public static  final String QUEUE_NAME_WORK_QUEUE_1107 = "queue_name_work_queue__1107";

    public static void main(String[] args) throws Exception {

        try(
                //1.创建连接对象
                Connection connection = ConnectionUtil.getConnection();
                //2.创建通道
                Channel channel = connection.createChannel();
        ) {
            //3.声明一个队列
            channel.queueDeclare(
                    //队列名称
                    QUEUE_NAME_WORK_QUEUE_1107,
                    true,   //是否持久化
                    false,  //是否一个队列占一个连接
                    false,  //服务器不使用的时候删除他
                    null    //队列的其他属性
            );
            //4模拟一个消息内容
            String message = "哈哈哈哈哈哈";
            //5.使用默认的交换机 发送消息给指定的队列
            channel.basicPublish(
                    "",  //空的 默认的交换机
                    QUEUE_NAME_WORK_QUEUE_1107,   //routingKey 需要发给的队列的名字
                    null,   //额外参数，这里不需要
                    message.getBytes()  //消息内容
            );
            System.out.println("消息发送完毕"+message);
        }
    }
}

